Page({

  /**
   * 页面的初始数据
   */
  data: {
    //幻灯片数据
    swiperImg: [ 
      {
        src: 'http://sp5s2hso6.hn-bkt.clouddn.com/ad1.png',
        url:'https://mp.weixin.qq.com/s/emk7Vl0m273xhwhnOpyY2w'
      }, 
      {
        src: 'http://sp5s2hso6.hn-bkt.clouddn.com/ad2.jpg',
        url:'https://mp.weixin.qq.com/s/xj_dRnb9Nmlg-9jhQyr9Ww'
      }, 
      // {src: 'https://gaopursuit.oss-cn-beijing.aliyuncs.com/2022/newsimage3.jpg'} 
    ],
    products:[],
    productShow: [],
    searchValue: ""
  },

  //点广告
  onAdClick:function(e){
    const url = encodeURIComponent(e.currentTarget.dataset.url);
    wx.navigateTo({
      url: `/pages/ad1/ad1?url=${url}`,
    });
  },
  //搜索功能
  getInput() {
    // console.log(this.data.searchValue);
    if(this.data.searchValue == ""){
      this.setData({
        productShow:this.data.products
      })
    } else {
      this.setData({
        productShow: this.data.products.filter((i) => {
          return i.name.includes(this.data.searchValue)
        })
      })
    }

  },
  // 点击商品，弹出操作菜单
  onProductClick: function (e) {
    const productId = e.currentTarget.dataset.id; // 从事件对象中提取 productId
    const product = this.data.products.find(p => p._id === productId); // 根据 productId 找到对应的产品
 
    if (product) {
      const contactOption = `复制联系方式(${product.wechatID})`;
      wx.showActionSheet({
        itemList: ['查看大图', contactOption, '私聊'], // 添加“私聊”选项
        success: (res) => {
          if (res.tapIndex === 0) {
            // 查看大图
            this.previewImage(product.imageUrl);
          } else if (res.tapIndex === 1) {
            // 复制联系方式到剪贴板
            this.copyContactToClipboard(product.wechatID);
          } else if (res.tapIndex === 2) {
            // 跳转到私聊页面
            this.navigateToChatPage(product);
          }
        },
        fail: (err) => {
          console.error('操作取消', err);
        }
      });
    } else {
      console.error('未找到对应的产品');
    }
  },
 
  // 查看大图
  previewImage: function (imageUrl) {
    wx.previewImage({
      urls: [imageUrl],
      current: imageUrl
    });
  },
 
  // 复制联系方式
  copyContactToClipboard: function (wechatID) {
    wx.setClipboardData({
      data: wechatID,
      success() {
        wx.showToast({
          title: '联系方式已复制',
          icon: 'success'
        });
      },
      fail(err) {
        console.error('复制失败', err);
        wx.showToast({
          title: '复制失败',
          icon: 'none'
        });
      }
    });
  },
 
  // 跳转到私聊页面
  navigateToChatPage: function (product) {
    wx.navigateTo({
      url: `/pages/chat/chat?productId=${product.productId}`, // 假设聊天页面的路径是/pages/chat/chat
      success: function (res) {
        // 可以在这里处理跳转成功后的逻辑，比如通过全局事件总线或其他方式通知聊天页面刷新数据等（如果需要）
      },
      fail: function (err) {
        console.error('跳转失败', err);
      }
    });
  },
 
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.getProductsFromCloud();
    const products = wx.getStorageSync('products') || [];
    this.setData({products});
    console.log('加载的产品信息：',products);
  },

  //获取商品信息
  async getProductsFromCloud(){
    const db = wx.cloud.database();
    
    try {
      const res = await db.collection('products').get(); // 获取云数据库中的商品数据
      
      this.setData({
        products: res.data  // 更新页面的商品信息
      });
      //console.log(this.data.products);
      this.setData({
        productShow :this.data.products
      });
      
      console.log('获取到的商品信息：', res.data);
    } catch (error) {
      console.error('获取商品信息失败：', error);
      wx.showToast({
        title: '获取商品信息失败',
        icon: 'none'
      });
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this.getProductsFromCloud().finally(() => {
      wx.stopPullDownRefresh(); //停止下拉刷新
    });
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    
  }
})